Chris Pollett > Old Classes >
CS185c

( Print View )

Student Corner:
  [Grades Sec3]

  [Submit Sec3]

  [Class Sign Up Sec3]

  [
Lecture Notes]
  [Discussion Board]

Course Info:
  [Texts & Links]
  [Topics/Outcomes]
  [Outcomes Matrix]
  [Grading]
  [HW/Quiz Info]
  [Exam Info]
  [Regrades]
  [Honesty]
  [Additional Policies]
  [Announcements]

HWs and Quizzes:
  [Hw1]  [Hw2]  [Hw3]
  [Hw4]  [Quizzes]  [Project]

Practice Exams:
  [Mid]  [Final]

                           












HW#4 --- last modified February 28 2019 22:12:44..

Solution set.

Due date: Nov 25

Files to be submitted:
  Hw4.zip

Purpose: To gain experience with OpenGL on mobile platforms.

Related Course Outcomes:

The main course outcomes covered by this assignment are:

LO4 -- Write a mobile application that makes use of the device graphics APIs such as OpenGL.

Specification:

Imagine your favorite grocery store bottle or can. For this homework I'd like you to write an app which renders this bottle in 3D using OpenGL. Your app should support viewing this bottle (or can) from different positions. In particular, your camera position should always be facing the bottle. You should support zooming in towards the bottle, as well as zooming out from the bottle. You should support moving the camera left or right in a circle about the bottle that is in the plane given by the look-at vector n and the vector n x v where v is the view up vector and x is cross product. It should also support moving the camera up and down in a circle about the bottle in the plane of n and v. Finally so you might be able to write a 3D game you should render some numbers (for keeping score) somewhere in this scene. Describe the UI you use to move in a scene in the file, readme.txt .

I will give a 2pt bonus (after curving) for making your program so that if you tap the screen your bottle breaks apart in an entertaining fashion.

I will give a 2pt bonus (after curving) for making your program play music in the background.

Point Breakdown

3D Bottle or can rendered using OpenGL 2 pts
Can zoom in and out (1pt each) 2 pts
Can rotate left and right in the plane given by v and n x v as described (1pt each) 2 pts
Can rotate up and down in the plane given by v and n as described (1pt each) 2 pts
Numbers are drawn somewhere in the scene (1pt/number up to 2pts) 2 pts
Total10pts